package Negocio;

import javax.persistence.*;
import DTO.EnvioExternoVO;

@MappedSuperclass
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
public abstract class EnvioExterno extends Envio
{
	@Column(name="idTracking")
	private int idTracking;
	
	@OneToOne(cascade = CascadeType.ALL)
	@JoinColumn(name="cuit")
	private Carrier empresaEncargada;

	public EnvioExterno(String posicionActual, boolean habilitado, int idTracking, Carrier empresaEncargada) 
	{
		super(posicionActual, habilitado);
		this.idTracking = idTracking;
		this.empresaEncargada = empresaEncargada;
	}

	public EnvioExterno() {super();}

	public int getIdTracking() {
		return idTracking;
	}

	public void setIdTracking(int idTracking) {
		this.idTracking = idTracking;
	}

	public Carrier getEmpresaEncargada() {
		return empresaEncargada;
	}

	public void setEmpresaEncargada(Carrier empresaEncargada) {
		this.empresaEncargada = empresaEncargada;
	}
	
	public boolean tenesEsteTracking(int idTracking){
	    if (getIdTracking() == idTracking)
		return true;
	    return false;
	}
	
	public abstract EnvioExternoVO toVO();
}

